Merge pull request #406 from avoid3d/throttle-correction-comment
[betaflight.git] / docs / Board - CC3D.md
blobc1194ba5ecf0401031e91186b0819e18f077b265
1 # Board - CC3D
3 The OpenPilot Copter Control 3D aka CC3D is a board more tuned to Acrobatic flying or GPS based
4 auto-piloting.  It only has one sensor, the MPU6000 SPI based Accelerometer/Gyro.
5 It also features a 16Mbit SPI based EEPROM chip.  It has 6 ports labeled as inputs (one pin each)
6 and 6 ports labeled as motor/servo outputs (3 pins each).
8 If issues are found with this board please report via the [github issue tracker](https://github.com/cleanflight/cleanflight/issues).
10 The board has a USB port directly connected to the processor.  Other boards like the Naze and Flip32
11 have an on-board USB to uart adapter which connect to the processor's serial port instead.
13 Currently there is no support for virtual com port functionality on the CC3D which means that cleanflight
14 does not currently use the USB socket at all. Therefore, the communication with the board is achieved through a USB-UART adaptater connected to the Main port.
16 The board cannot currently be used for hexacopters/octocopters.
18 Tricopter & Airplane support is untested, please report success or failure if you try it. 
20 # Pinouts
22 The 8 pin RC_Input connector has the following pinouts when used in RX_PPM/RX_SERIAL mode
24 | Pin | Function  | Notes                            |
25 | --- | --------- | -------------------------------- |
26 | 1   | Ground    |                                  |
27 | 2   | +5V       |                                  |
28 | 3   | PPM Input | Enable `feature RX_PPM`          | 
29 | 4   | SoftSerial1 TX | Enable `feature SOFTSERIAL` |
30 | 5   | SoftSerial1 RX | Enable `feature SOFTSERIAL` |
31 | 6   | Current   | Enable `feature CURRENT_METER`.  Connect to the output of a current sensor, 0v-3.3v input |
32 | 7   | Battery Voltage sensor | Enable `feature VBAT`. Connect to main battery using a voltage divider, 0v-3.3v input |
33 | 8   | RSSI      | Enable `feature RSSI_ADC`.  Connect to the output of a PWM-RSSI conditioner, 0v-3.3v input |
35 The 6 pin RC_Output connector has the following pinouts when used in RX_PPM/RX_SERIAL mode
37 | Pin | Function  | Notes |
38 | --- | ----------| ------|
39 | 1   | MOTOR 1   |       |
40 | 2   | MOTOR 2   |       |
41 | 3   | MOTOR 3   |       |
42 | 4   | MOTOR 4   |       |
43 | 5   | LED Strip |       |
44 | 6   | Unused    |       |
46 The 8 pin RC_Input connector has the following pinouts when used in RX_PARALLEL_PWM mode
48 | Pin | Function | Notes |
49 | --- | ---------| ------|
50 | 1   | Ground   |       |
51 | 2   | +5V      |       |
52 | 3   | Unused   |       | 
53 | 4   | CH1      |       |
54 | 5   | CH2      |       |
55 | 6   | CH3      |       |
56 | 7   | CH4/Battery Voltage sensor      | CH4 if battery voltage sensor is disabled |
57 | 8   | CH5/CH4  | CH4 if battery voltage monitor is enabled|
59 The 6 pin RC_Output connector has the following pinouts when used in RX_PARALLEL_PWM mode
61 | Pin | Function | Notes |
62 | --- | ---------| ------|
63 | 1   | MOTOR 1  |       |
64 | 2   | MOTOR 2  |       |
65 | 3   | MOTOR 3  |       |
66 | 4   | MOTOR 4  |       |
67 | 5   | Unused   |       |
68 | 6   | Unused   |       |
70 # Serial Ports
72 | Value | Identifier   | Board Markings | Notes                                    |
73 | ----- | ------------ | -------------- | -----------------------------------------|
74 | 1     | USART1       | MAIN PORT      | Has a hardware inverter for S.BUS        |
75 | 2     | USART3       | FLEX PORT      |                                          |
76 | 3     | SoftSerial   | RC connector   | Pins 4 and 5 (Tx and Rx respectively)    |
78 The SoftSerial port is not available when RX_PARALLEL_PWM is used. The transmission data rate is limited to 19200 baud.
80 To connect the GUI to the flight controller you need additional hardware attached to the USART1 serial port (by default).
82 # Flashing
84 There are two primary ways to get Cleanflight onto a CC3D board.
86 * Single binary image mode - best mode if you don't want to use OpenPilot.
87 * OpenPilot Bootloader compatible image mode - best mode if you want to switch between OpenPilot and Cleanflight.
89 ## Single binary image mode.
91 The entire flash ram on the target processor is flashed with a single image.
93 ## OpenPilot Bootloader compatible image mode.
95 The initial section of flash ram on the target process is flashed with a bootloader which can then run the code in the
96 remaining area of flash ram.
98 The OpenPilot bootloader code also allows the remaining section of flash to be reconfigured and re-flashed by the
99 OpenPilot Ground Station (GCS) via USB without requiring a USB to uart adapter.
101 In this mode a USB to uart adapter is still required to connect to via the GUI or CLI.